Sqlite veritanı sorunu
30.05.2016 - 05:15
Merhaba arkadaşlar ben androidde veritabanı işlemleri yaparken bazı hatalar alıyorum örneğin aşağıda veritabanı sınıfımda ki veritabanı oluşturma ve tablo oluştma ile ilgili kısımlar var burada test adlı tabloma kayıtları başarıyla ekleyebiliyorum ancak kasa adlı tablomda basit bir veri çekme işini dahi yapmıyor.
try catch bloklarında no such table kasa uyarısı almıştım acaba hatam nerede ? aşağıdaki kodun en altında veri çekmek için yazdığım kodda mevcut acaba orada mı bir hata var.
public class Database extends SQLiteOpenHelper {
// Database Version
private static final int DATABASE_VERSION = 2;
// Database Name
private static final String DATABASE_NAME = "sqllite_database";
/*Notlar Tablo Yapısı*/
private static final String TABLE_NAME_NOTLAR="test";
private static String BASLIK = "baslik";
private static String ICERIK = "icerik";
private static String ID = "id";
/*Bitti*/
private static final String TABLE_NAME_GENELKASA="kasa";
private static String GENELKASA_ID="id";
private static String GENELKASA_TUTAR="tutar";
public Database(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}
@Override
public void onCreate(SQLiteDatabase db) {
String CREATE_TABLE_NOTLAR = "CREATE TABLE " + TABLE_NAME_NOTLAR + "("
+ ID + " INTEGER PRIMARY KEY AUTOINCREMENT,"
+ BASLIK + " TEXT,"
+ ICERIK + " TEXT" + ");";
String CREATE_TABLE_GENELKASA="CREATE TABLE "+TABLE_NAME_GENELKASA+"("
+GENELKASA_ID+" INTEGER PRIMARY KEY AUTOINCREMENT,"
+GENELKASA_TUTAR+" TEXT);";
db.execSQL(CREATE_TABLE_GENELKASA);
db.execSQL(CREATE_TABLE_NOTLAR);
}
//veri çekme kodları kasa tablosu için
public ArrayList<HashMap<String, String>> genelkasaListesi(){
SQLiteDatabase db = this.getReadableDatabase();
String selectQuery = "SELECT * FROM " + TABLE_NAME_GENELKASA;
Cursor cursor = db.rawQuery(selectQuery, null);
ArrayList<HashMap<String, String>> notlist = new ArrayList<HashMap<String, String>>();
// looping through all rows and adding to list
if (cursor.moveToFirst()) {
do {
HashMap<String, String> map = new HashMap<String, String>();
for(int i=0; i<cursor.getColumnCount();i++)
{
map.put(cursor.getColumnName(i), cursor.getString(i));
}
notlist.add(map);
} while (cursor.moveToNext());
}
db.close();
return notlist;
}
}
GenelKasa.java dosyası yani kasa tablosu ile ilgili işlemlerin yapılacağı dosya (bu activity de ilgili butona tıklanınca hata alıyorum.)
public class GenelKasa extends AppCompatActivity {
TextView lblGenelTutar;
ArrayList<HashMap<String,String>> liste;
Button genelKasa;
Button vericek;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_genel_kasa);
final Database db = new Database(getApplicationContext());
/* */
genelKasa = (Button)findViewById(R.id.btnGenelKasa);
genelKasa.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
db.genelkasa_ekle("100");
Toast.makeText(getApplicationContext(),"Genel Kasaya Ücret Eklendi.",Toast.LENGTH_LONG).show();
}
});
vericek = (Button)findViewById(R.id.btnVeriCek);
vericek.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
try
{
liste = db.genelkasaListesi();
if(liste.size()==0)
{
lblGenelTutar.setText("Daha Önce Genel Kasaya Ücret Girilmemiş !");
}else{
lblGenelTutar.setText("Genel Kasa : 0");
}
}catch (Exception ex)
{
Toast.makeText(getApplicationContext(),ex.getMessage().toString(),Toast.LENGTH_LONG).show();
}
}
});
}
}
46
Görüntülenme
0 Beğeni